package java学习.第15章_File类与IO流;

import org.junit.Test;

import java.io.*;

public class G_数据流 {
    /**
     *  数据流
     *    DataInputStream 和 DataOutputStream
     *   作用：用于 读取或写出'基本数据'类型的变量或'字符串'
     *    练习：将内存中的字符串、基本数据类型的变量写出到文件中。
     */
    @Test
    public void 数据流() {

        DataOutputStream dos = null;
        DataInputStream dis = null;
        try {
            //带类型写文件
            dos = new DataOutputStream(new FileOutputStream("File\\count.txt"));
            //带类型读文件
            dis = new DataInputStream(new FileInputStream("File\\count.txt"));

            dos.writeUTF("张蛟龙");
//            dos.flush();//刷新操作，将内存中的数据写入文件
            dos.writeInt(231);
//            dos.flush();
            dos.writeBoolean(true);

//            dos.flush();

            /**
             * 读取的顺序要与存入的顺序一致   因为他读取的字节有变动
             */
            System.out.println(dis.readUTF());
            System.out.println(dis.readInt());
            System.out.println(dis.readBoolean());


        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                dos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                dis.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    } //可以保存类型
}
